/*
 * Licensed to Apereo under one or more contributor license
 * agreements. See the NOTICE file distributed with this work
 * for additional information regarding copyright ownership.
 * Apereo licenses this file to you under the Apache License,
 * Version 2.0 (the "License"); you may not use this file
 * except in compliance with the License.  You may obtain a
 * copy of the License at the following location:
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr,
address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var,
b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot,
thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header,
hgroup, menu, nav, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}
body { line-height: 1; }
nav ul { list-style: none; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }
a { margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent; }
ins { background-color: #ff9; color: #000; text-decoration: none; }
mark { background-color: #ff9; color: #000; font-style: italic; font-weight: bold; }
del { text-decoration: line-through; }
abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }
table { border-collapse: collapse; border-spacing: 0; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #cccccc; margin: 1em 0; padding: 0; }
input, select { vertical-align: middle; }
body { font-family: Verdana, sans-serif; font-size: 11px; line-height: 1.4em; background: #eee; }

#container { width: 960px; margin: 0 auto; }

@media only screen and (max-width: 960px) {
    #container { width: 100%; }
    #content {
        -webkit-border-bottom-right-radius: 0px;
        -webkit-border-bottom-left-radius: 0px;
        -moz-border-radius-bottomright: 0px;
        -moz-border-radius-bottomleft: 0px;
        border-bottom-right-radius: 0px;
        border-bottom-left-radius: 0px;
    }
}

body {
    background: #153e50; /* Old browsers */
}

a:link, a:visited {
    color: #257bb2;
}

a:hover {
    color: #a0b757;
}

p {
    margin-bottom: 1.4em;
}

header {
    overflow: hidden;
    padding: 20px 0;
}

#logo {
    display: block;
    background: url(../images/logo.png) no-repeat;
    text-indent: -999em;
    float: left;
    height: 100px;
    width: 80%;
    margin-right: 40px;
    border: 0px;
}

header h1 {
    float: right;
    width: 119px;
    height: 60px;
    background: url(../images/cas-logo.png) no-repeat;
    text-indent: -999em;
}

#content {
    overflow: hidden;
    background: #fff;
    padding: 20px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
}

#msg {
    padding: 20px;
    margin-bottom: 40px;
}

#msg.errors {
    border: 1px dotted #BB0000;
    color: #BB0000;
    padding-left: 100px;
    background: url(../images/error.png) no-repeat 20px center;
}

#msg.success { border: 1px dotted #390; color: #390; padding-left: 100px; background: url(../images/success.png) no-repeat 20px center; }
#msg.info { border: 1px dotted #008; color: #008; padding-left: 100px; background: url(../images/info.png) no-repeat 20px center; }
#msg.question { border: 1px dotted #390; color: #390; padding-left: 100px; background: url(../images/question.png) no-repeat 20px center; }
#msg.warn { border: 1px dotted #960; color: #960; padding-left: 100px; background: #ffbc8f url(../images/info.png) no-repeat 20px center; }

.errors {
    border: 1px dotted #BB0000;
    color: #BB0000;
    padding-left: 100px;
    padding-top:5px;
    margin-bottom:5px;
    background: url(../images/error.png) no-repeat 20px center;
}

#serviceui.serviceinfo {
    border: 1px dotted #0066FF;
    color: black;
    padding-left: 10px;
    padding-top: 5px;
}

#servicedesc {
    vertical-align:middle;
    padding-left: 30px;
    width: 90%;
}

#login {
    width: 320px;
    float: left;
    margin-right: 20px;
}

#login h2 {
    font-weight: normal;
    font-size: 1.4em;
    margin-bottom: 20px;
}

#login .row {
    padding: 10px 0;
}

#login label {
    display: block;
    margin-bottom: 2px;
}

#login .check label {
    display: inline;
}

#login input[type=text], #login input[type=password] {
    font-size: 1.4em;
    padding: 5px;
}

#login .btn-submit {
    background: #70ba61;
    border: 0;
    padding: 10px 20px;
    font-weight: bold;
    color: white;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
}

#login .btn-reset {
    background: #eee;
    padding: 10px 20px;
    border: 0;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
}

#login .btn-submit:hover, #login .btn-reset:hover {
    cursor: pointer;
}

#login .btn-submit:hover {
    background: #7fd36e;
}

#login .btn-reset:hover {
    background: #d4d4d4;
}

#sidebar {
    width: auto;
    height: 100%;
}

#sidebar-content {
    padding-left: 20px;
}

#list-languages h3 {
    margin-bottom: 1.4em;
}

#list-languages ul li {
    list-style: none;
    display: inline-block;
    margin-right: 2em;
}

footer {
    padding: 20px;
    color: white;
}

footer a:link, footer a:visited {
    color: white;
}

@media only screen and (max-width: 960px) {
    header { padding: 20px; }
    #container { width: 100%; }
    #content {
        -webkit-border-radius: 0px;
        -moz-border-radius: 0px;
        border-radius: 0px;
    }
}

@media only screen and (max-width: 855px) {
    #logo { display: none; }
    header h1 { font-size: 1em; width: 70px; height: 40px; background-size: 70px 40px; }
    #login { float: none; width: 100%; }
    #fm1 .row input[type=text],
    #fm1 .row input[type=password] { width: 100%; padding: 10px; box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; }
    #fm1 .row .btn-submit { outline: none; -webkit-appearance: none; -webkit-border-radius: 0; border: 0; background: #70ba61; color: white; font-weight: bold; width: 100%; padding: 10px 20px; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; }
    #fm1 .row .btn-reset { display: none; }
    #sidebar { margin-top: 20px; }
    #sidebar .sidebar-content { padding: 0; }
}

